package desmontec.aluguel

import desmontec.clientes.Cliente
import desmontec.maquinas.Maquina
import desmontec.sistema.SecUser

class AluguelMaquina {

	Maquina maquina
	Cliente cliente
	String flagAtivo = "S"
	Date inicioValidade
	Date fimValidade
	SecUser usuario

	static constraints = {
		maquina(nullable: false)
		cliente(nullable: false)
		flagAtivo(blank: false , inList:["S", "N"])
		inicioValidade(nullable:false)
		fimValidade(nullable:false)
		fimValidade(validator: {val, obj ->
			if (!val.after(obj.inicioValidade)){
				return[
					'desmontec.aluguel.AluguelMaquina.prazoValidade.erro'
				]
			}
		})
		usuario{nullable:false}
	}

	static hasMany = [ consumo : ConsumoAluguel ]

	static mapping = { consumo cascade:"all,delete-orphan" }
	
	public String toString(){
		return "${this.maquina}: ${this.cliente}";
	}
}
